$(function() {
    //1.全选全不选模块
    $('.checkall').change(function() {
            $('.j-checkbox, .checkall').prop('checked', $(this).prop('checked'))
        })
        //7更改背景色
    if ($('.checkall').prop('checked')) {
        $('.cart-item').addClass('check-cart-item')
    } else {
        $('.cart-item').removeClass('check-cart-item')
    }
    //2.下面小复选框是否全选,如果全选则全选框选中，否则就选不中
    $('.j-checkbox').change(function() {
            if ($('.j-checkbox:checked').length === $('.j-checkbox').length) {
                $('.checkall').prop('checked', true)
            } else {
                $('.checkall').prop('checked', false)
            }
            //7更改背景色
            if ($(this).prop("checked")) {
                // 让当前的商品添加 check-cart-item 类名
                $(this).parents(".cart-item").addClass("check-cart-item");
            } else {
                // check-cart-item 移除
                $(this).parents(".cart-item").removeClass("check-cart-item");
            }
        })
        //3.增减商品数量
        //(1)增加商品操作
    $('.increment').click(function() {
        //获取增加数量的值
        var n = $(this).siblings('.itxt').val()
            //数量值进行++
        n++
        //将值赋给数量值
        $(this).siblings('.itxt').val(n)
            //获取到商品单价
        var p = $(this).parents('.p-num').siblings('.p-price').html()
            //去掉价格前面￥符号，用substr（1）进行截取
        p = p.substr(1)
            //获得单价*数量=该商品价格总和   toFixed(2)保留小数点后面两位
        $(this).parents('.p-num').siblings('.p-sum').html('￥' + (p * n).toFixed(2))
        getSum()
    })
    $('.decrement').click(function() {
            var n = $(this).siblings('.itxt').val()
            if (n == 1) {
                return false
            }
            n--
            $(this).siblings('.itxt').val(n)
            var p = $(this).parents('.p-num').siblings('.p-price').html()
            p = p.substr(1)
            $(this).parents('.p-num').siblings('.p-sum').html('￥' + (p * n).toFixed(2))
            getSum()
        })
        //4.手动修改数量，后面的价格随之增减
    $('.itxt').change(function() {
            //获取文本框的值
            var n = $(this).val()
            if (n < 1) {
                n = 1
            }
            $(this).val(n)
                //获取商品单价
            var p = $(this).parents('.p-num').siblings('.p-price').html()
                //同样去掉￥符号
            p = p.substr(1)
                //获得相应数量商品的总价
            $(this).parents('.p-num').siblings('.p-sum').html('￥' + (p * n).toFixed(2))
            getSum()

        })
        //5.计算总计和总额
    getSum()

    function getSum() {
        //总件数
        var count = 0
            //总价钱
        var money = 0
            //开始遍历件数文本框
        $('.itxt').each(function(i, ele) {
                //总件数就是文本框内value值
                count += parseInt($(ele).val())
            })
            //得到的总件数给下方总件数
        $('.amount-sum em').text(count)
            //开始遍历价格文本框
        $('.p-sum').each(function(i, ele) {
                //总价钱就是文本框内容
                money += parseInt($(ele).text().substr(1))
            })
            //得到的总价钱给下方总价钱
        $('.price-sum em').text('￥' + money.toFixed(2))
    }
    //6.删除商品模块
    //点击删除小按钮，删除相应商品
    $('.p-action a').click(function() {
            $(this).parents('.cart-item').remove()
            getSum()
        })
        //删除选中的商品就是小复选框：checked
    $('.remove-batch').click(function() {
            $('.j-checkbox:checked').parents('.cart-item').remove()
            getSum()
        })
        //清空购物车
    $('.clear-all').click(function() {
        $('.cart-item').remove()
        getSum()
    })
})